package com.danco.training.zaneuskaya.connection.dao;



import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Session;

import com.danco.training.zaneuskaya.domain.Book;

public interface BookDao extends GenericDao<Book, Integer> {

	public List<Book> readSomeMonthsUnsoldBooks(Session session,
			int months) throws HibernateException;

	public List<Book> readBooksSortedByAlphabet(Session session) throws HibernateException;

	public List<Book> readBooksSortedByPublicationDate(Session session) throws HibernateException;

	public List<Book> readBooksSortedByPrice(Session session) throws HibernateException;

	public List<Book> readBooksSortedByAvailability(Session session) throws HibernateException ;

	public List<Book> readUnsoldBooksSortedByReceiptDate(Session session,
			int months) throws HibernateException;

	public List<Book> readUnsoldBooksSortedByPrice(Session session,
			int months) throws HibernateException;

	public List<Book> readAvailableBooks(Session session);

	public List<Book> readNotAvailableBooks(Session session);

	

}
